Software companies annually spend billions of dollars on research to develop new software and, in return, wish to control their intellectual property by controlling the sale and distribution of their products. However, software piracy has cost such companies billions of dollars in lost profits.
Various methods have been used to limit unauthorized distribution of software. For example, software is often distributed with a printed serial number that must be entered by a user and must match a hidden digital version of that serial number in order to enable installation. Other software installation programs require explicit registration, usually via the internet, to obtain a “registration key” that allows installation and use of the software. Such keys may restrict use to one or two installations, and may also require linking to a computer hardware serial number. Still other installations use a hardware “dongle” connected to a computer I/O port which must be installed to enable use of particular software.